// 缓存类型
const ENUM_CACHE_TYPE = {
	MEMORY: {
		value: 'memory',
		name: "内存缓存"
	},
	STORAGE: {
		value: 'storage',
		name: "Storage缓存"
	}
}

// 通知类型
const ENUM_NOTIFICATION_TYPE = {
	NORMAL: 0, // 正常 可添加多个监听者
	FIRST: 1, // 只允许保留最初始的监听者
	LAST: 2, // 只通知最新监听者
} // 通知对象类型

// 日志等级
const ENUM_LOG_LEVEL = {
	// 1.调试
	DEBUG: 'DEBUG',
	// 2.信息
	INFO: 'INFO',
	// 3.警告
	WARN: 'WARN',
	// 4.错误
	ERROR: 'ERROR',
};

// 日志类型
const ENUM_LOG_TYPE = {
	// 1.用户行为日志
	USER_BEHAVIOR: 'USER_BEHAVIOR',
	// 2.业务日志
	BUSINESS_LOG: 'BUSINESS_LOG',
	// 3.系统日志
	SYSTEM_LOG: 'SYSTEM_LOG',
	// 4.错误日志
	ERROR_LOG: 'ERROR_LOG',
	// 5.性能日志
	PERFORMANCE_LOG: 'PERFORMANCE_LOG',
	// 6.其他日志
	OTHER_LOG: 'OTHER_LOG',
	// 7.埋点日志
	TRACK_LOG: 'TRACK_LOG'
};

// 媒体类型
const ENUM_MEDIA_TYPE = {
	IMAGE: {
		value: 1,
		name: "image"
	},
	VIDEO: {
		value: 2,
		name: "video"
	},
	UNKNOW: {
		value: 0,
		name: "未知"
	}
}

// 媒体下载状态
const ENUM_MEDIA_DOWNLOAD_STATUS = {
	WAITING: {
		value: "WAITING",
		name: "等待下载"
	},
	DOWNLOADING: {
		value: 'DOWNLOADING',
		name: '下载中'
	},
	SUCCESS: {
		value: 'SUCCESS',
		name: '上传成功'
	},
	FAIL: {
		value: 'FAIL',
		name: '上传失败'
	}
}

// 媒体上传状态
const ENUM_MEDIA_UPLOAD_STATUS = {
	WAITING: {
		value: 'WAITING',
		name: '等待上传'
	},
	UPLOADING: {
		value: 'UPLOADING',
		name: '上传中'
	},
	SUCCESS: {
		value: 'SUCCESS',
		name: '上传成功'
	},
	FAIL: {
		value: 'FAIL',
		name: '上传失败'
	}
}

module.exports = {
	ENUM_CACHE_TYPE,

	ENUM_NOTIFICATION_TYPE,

	ENUM_LOG_LEVEL,
	ENUM_LOG_TYPE,

	ENUM_MEDIA_TYPE,
	ENUM_MEDIA_DOWNLOAD_STATUS,
	ENUM_MEDIA_UPLOAD_STATUS
}